﻿
using System.ComponentModel;
using Zadani09.db.DAOimpl;
using System;

namespace Zadani09.db
{
    public partial class Dilo : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_dilo":
                        return (this.IDDilo);
                    case "nazev":
                        return (this.Nazev);
                    case "popis":
                        return (this.Popis);
                    case "dlouhy_popis":
                        return (this.DlouhyPopis);
                    case "datum":
                        return (this.Datum);
                    case "na_prodej":
                        return (this.NaProdej);
                    case "ulice":
                        return (this.Ulice);
                    case "popisne":
                        return (this.Popis);
                    case "mesto":
                        return (this.Mesto);
                    case "psc":
                        return (this.PSC);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class Galerie : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_galerie":
                        return (this.IDGalerie);
                    case "jmeno":
                        return (this.Jmeno);
                    case "popis":
                        return (this.Popis);
                    case "dlouhy_popis":
                        return (this.DlouhyPopis);
                    case "ulice":
                        return (this.Ulice);
                    case "popisne":
                        return (this.Popisne);
                    case "mesto":
                        return (this.Mesto);
                    case "psc":
                        return (this.PSC);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class Serie : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_serie":
                        return (this.IDSerie);
                    case "id_umelec":
                        return (this.IDSerie);
                    case "nazev":
                        return (this.Nazev);
                    case "popis":
                        return (this.Popis);
                    case "dlouhy_popis":
                        return (this.DlouhyPopis);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class SerieDilo : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_dilo":
                        return (this.IDDilo);
                    case "id_serie":
                        return (this.IDSerie);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class Umelec : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_umelec":
                        return (this.IDUmelec);
                    case "jmeno":
                        return (this.Jmeno);
                    case "prijmeni":
                        return (this.Prijmeni);
                    case "popis":
                        return (this.Popis);
                    case "dlouhy_popis":
                        return (this.DlouhyPopis);
                    case "ulice":
                        return (this.Ulice);
                    case "popisne":
                        return (this.Popisne);
                    case "mesto":
                        return (this.Mesto);
                    case "psc":
                        return (this.PSC);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class UmelecDilo : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_umelec":
                        return (this);
                    case "id_dilo":
                        return (this);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class Uzivatel : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_uzivatel":
                        return (this.IDUzivatel);
                    case "login_uzivatel":
                        return (this.LoginUzivatel);
                    case "login_heslo_hash":
                        return (this.LoginHesloHash);
                    case "posledni_zmena_hesla":
                        return (this.PosledniZmenaHesla);
                    case "jmeno":
                        return (this.Jmeno);
                    case "prijmeni":
                        return (this.Prijmeni);
                    case "email":
                        return (this.Email);
                    case "ulice":
                        return (this.Ulice);
                    case "popisne":
                        return (this.Popisne);
                    case "mesto":
                        return (this.Mesto);
                    case "psc":
                        return (this.PSC);
                    case "stav":
                        return (this.Stav);
                }

                throw new Exception("Neznámý atribut.");
            }
        }

   }

    public partial class UzivatelDilo : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_uzivatel":
                        return (this.IDUzivatel);
                    case "id_dilo":
                        return (this.IDDilo);
                    case "datum":
                        return (this.Datum);
                    case "cena":
                        return (this.Cena);
                    case "operace":
                        return (this.Operace);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class UzivatelGalerie : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_galerie":
                        return (this.IDGalerie);
                    case "id_uzivatel":
                        return (this.IDUzivatel);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class UzivatelUmelec : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_uzivatel":
                        return (this.IDUzivatel);
                    case "id_umelec":
                        return (this.IDUmelec);
                    case "is_umelec":
                        return (this.IsUmelec);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class Vstupenka : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_uzivatel":
                        return (this.IDUzivatel);
                    case "id_vystava":
                        return (this.IDVystava);
                    case "datum":
                        return (this.Datum);
                    case "pocet_dospeli":
                        return (this.PocetDospeli);
                    case "pocet_deti":
                        return (this.PocetDeti);
                    case "stav":
                        return (this.Stav);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class Vystava : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_vystava":
                        return (this.IDVystava);
                    case "id_galerie":
                        return (this.IDGalerie);
                    case "jmeno":
                        return (this.Jmeno);
                    case "popis":
                        return (this.Popis);
                    case "dlouhy_popis":
                        return (this.DlouhyPopis);
                    case "vernisaz":
                        return (this.Vernisaz);
                    case "zacatek":
                        return (this.Zacatek);
                    case "konec":
                        return (this.Konec);
                    case "oteviraci_doba":
                        return (this.OteviraciDoba);
                    case "cena_vstupenky_dospeli":
                        return (this.CenaVstupenkyDospeli);
                    case "cena_vstupenky_deti":
                        return (this.CenaVstupenkyDeti);
                    case "stav":
                        return (this.Stav);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }

    public partial class VystavaDilo : IAtribut
    {
        public object this[string atribut]
        {
            get
            {
                switch (atribut)
                {
                    case "id_vystava":
                        return (this.IDVystava);
                    case "id_dilo":
                        return (this.IDDilo);
                    case "prodano":
                        return (this.Prodano);
                    case "zacatek":
                        return (this.Zacatek);
                    case "konec":
                        return (this.Konec);
                }

                throw new Exception("Neznámý atribut.");
            }
        }
    }
}
